﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Reflection;
using System.Diagnostics;



namespace demoReflection
{
    //attaching Help attribute to entire assembly


    [AttributeUsage(AttributeTargets.Assembly| AttributeTargets.Class | AttributeTargets.Method | AttributeTargets.Field, AllowMultiple = false, Inherited = false)]
    public class HelpAttribute : Attribute
    {
        public HelpAttribute(String Description_in)
        {
            // TODO: Add constructor logic here
            this.description = Description_in;
        }
        protected String description;
        public String Description
        {
            get
            {
                return this.description;

            }
        }
    }

    //attaching Help attribute to our AnyClass
    [Help("This is a do-nothing Class.")]
    public class AnyClass
    {
        //attaching Help attribute to our AnyMethod
        [Help("This is a do-nothing Method.")]
        public void AnyMethod()
        {
        }
        //attaching Help attribute to our AnyInt Field
        [Help("This is any Integer.")]
        public int AnyInt;
    }
}
